.section { padding: 64px 0; }

/* Hero 遮罩，让白字更稳 */
.hero { position: relative; }
.hero::after { content:""; position:absolute; inset:0; background: rgba(0,0,0,.25); }
.hero > .container { position: relative; z-index: 1; }

/* Tabs 可点但不丑 */
.nav-pills .nav-link { border-radius: 999px; }
.nav-pills .nav-link.disabled { opacity: .5; cursor: not-allowed; }

/* KPI grid */
.kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 16px;
}
@media (max-width: 992px) {
  .kpi-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 576px) {
  .kpi-grid { grid-template-columns: 1fr; }
}
.kpi .kpi-title { font-size: .9rem; color:  #6c757d; }
.kpi .kpi-value { font-size: 1.5rem; font-weight: 700; }

/* Sticky 表头 */
.sticky-thead { position: sticky; top: 0; z-index: 2; }

/* 平台徽章风格 */
.badge-pf { border-radius: 6px; padding: .35rem .5rem; font-weight: 600; }
.badge-steam { background: #111; color: #fff; }
.badge-buff { background: #16a34a; color: #fff; }
.badge-c5 { background: #0ea5e9; color: #fff; }
.badge-skinport { background: #6b7280; color: #fff; }
.badge-halo { background: #7c3aed; color: #fff; }

/* 价差颜色 */
.spread-pos { color: #dc3545; font-weight: 600; } /* 有套利：负价差 vs Steam → 买入更便宜 */
.spread-neg { color: #198754; font-weight: 600; } /* 反向 */